let f oc s =
  output_char oc '`';
  output_string oc s;
  output_char oc '`';
;;

let g oc d =
  output_char oc '+';
  output_string oc (string_of_int d);
;;

Printf.printf `"%s %S <%8s> <%-7s> <%6S> <%-9S>\n" "x" "y" "z" "t" "uu" "wx";;
Printf.printf `"%d %x %X %o %u %l %L %n\n" 42 42 42 42 ~-1 1 2 3;;
Printf.printf `"%ld %lx %Ld %LX %ni %nX\n" 42l 11l 8L 6L 2n 3n;;
Printf.printf `"<%8.4d> <%8.4ld> <%8.4Ld>\n" 42 42l 42L;;
Printf.printf `"%f %g <%8.4f>\n" 3.14 1e8 3.14;;
Printf.printf `"%a %a\n" f "xxx" g 44;;
Printf.printf `"%t\n" (fun oc -> f oc "yzt");;
